package org.ycx.generator;

import org.apache.velocity.VelocityContext;

import java.util.Map;
import java.util.Set;

/**
 * 上下文初始化接口
 * Created by 杨 on 2017-07-18.
 */
public interface IGeneratorStep {
    /**
     * 对上下文进行加载
     *
     * @param context
     * @return
     */
    public VelocityContext initContext(VelocityContext context, String className) throws ClassNotFoundException, Exception;

    /**
     * 获取输出文件名称
     * @param loadName
     * @return
     */
    public String getOutFileName(String loadName);

    /**
     * 是否覆盖文件
     *
     * @param fileName
     * @return
     */
    public boolean overideFile(String fileName);

    String getProjectPath(String module);

    String getVmFile();
}
